#pragma once
#ifndef __G_RANGE_H__
#define __G_RANGE_H__

#include "GTypes.h"

namespace GEngine
{
	class GTaskRange
	{
	private:
		GSize	IndexLast;
		GSize	IndexFirst;
		GSize	Granularity;

	public:
				GTaskRange(GSize IndexFirst, GSize IndexLast);
				GTaskRange(GSize IndexFirst, GSize IndexLast, GSize Granularity);
				~GTaskRange();

		void	TrimBack(GSize NewLastIndex);
		void	TrimFront(GSize NewFirstIndex);

		GSize	GetIndexLast() const;
		GSize	GetIndexFirst() const;
		GSize	GetGranularity() const;

	};

}

#endif